import dayjs from 'dayjs';
import 'dayjs/locale/zh-cn'; // 引入中文语言包
import weekday from 'dayjs/plugin/weekday'; // 引入插件

dayjs.extend(weekday); // 使用插件
dayjs.locale('zh-cn'); // 设置全局语言环境为中文

export function formatWeChatTime(date: any) {
    const today = dayjs().startOf('day');
    const yesterday = today.clone().subtract(1, 'day');
    const theDayBeforeYesterday = today.clone().subtract(2, 'day');
    const startOfWeek = today.clone().startOf('week'); // 获取本周的开始时间（通常是周日或周一，取决于 locale）

    const targetDate = dayjs(date);

    if (targetDate.isSame(today, 'day')) {
        return targetDate.format('HH:mm'); // 今天的消息：显示具体时间
    } else if (targetDate.isSame(yesterday, 'day')) {
        return '昨天'; // 昨天的消息：显示“昨天”
    } else if (targetDate.isSame(theDayBeforeYesterday, 'day')) {
        return '前天'; // 前天的消息：显示“前天”
    } else if (targetDate.isAfter(startOfWeek)) {
        // 本周的消息：显示星期几
        return targetDate.format('dddd'); // 使用'dddd'格式显示完整中文星期名称
    } else {
        // 更早的消息：显示完整日期
        return targetDate.format('YY-MM-DD');
    }
}
